A standardization task for International Mobile Telecommunication (IMT)-Advanced, that is, the next-generation mobile communication system is recently in progress. IMT-Advanced sets its goal to support Internet Protocol (IP)-based multimedia service at a data transfer rate of 1 Gbps in stop and slow-speed moving states and of 500 Mbps in a fast-speed moving state.
3rd Generation Partnership Project (3GPP) is a system standard to satisfy the requirements of IMT-Advanced and is preparing for LTE-Advanced improved from Long Term Evolution (LTE) based on Orthogonal Frequency Division Multiple Access (OFDMA)/Single Carrier-Frequency Division Multiple Access (SC-FDMA) transmission schemes. LTE-Advanced is one of strong candidates for IMT-Advanced.
The next-generation wireless communication system requires a high-speed communication system capable of processing various pieces of information, such as video and wireless data and transmitting them. One of the most fundamental problems for achieving high-speed communication is how data can be transmitted through a channel efficiently and with reliability. In a wireless channel environment including wireless communication systems, unlike a wired channel environment, information is lost because inevitable errors are generated due to several factors, such as multi-path interference, shadowing, propagation attenuation, time-varying noise, interference, and fading.
Channel coding is a process of generating codewords by coding an information bit in order to prevent the loss of information. Here, the codeword refers to a bit stream generated by applying specific processing to an information bit in order to improve detection performance when transmitting the information bit.
Channel coding includes channel coding of a block form (hereinafter referred to as block coding) and channel coding of a Trellis form. The block coding is channel coding using a Bose-Chadhuri-Hocquenghem (BCH) code or a Reed-Muller (RM) code. A codeword in the block coding may be generated using a matrix block called a generating matrix. In the block coding, unlike in the channel coding of a Trellis form, there is noting relationship between front and rear blocks because there is no memory between consecutively generated blocks. The channel coding of a Trellis form is channel coding using a convolution code or a turbo code. A codeword in the channel coding of a Trellis form may be generated using a polynomial expression, such as a generating polynomial.
In LTE-A, a Transmit Format Combination Indicator (TFCI)) code is modified and used as a channel code for coding the channel information of an uplink control channel. The TFCI code is a code designed by puncturing an RM code, and it can simplify and speed up decoding through a fast Hamadard transform like an RM code because it may be considered as a modified RM code. Furthermore, the TFCI code is suitable for the requirements of channel information encoding because it supports various sizes of an information bit and codeword bits. Furthermore, the TFCI code can be used in the hardware of a dual mode system of Wideband Code Division Multiple Access (WCDMA) and LTE because it can use a decoder according to the 3GPP standard.
A generating matrix of a (20,10) TFCI code and a generating matrix of (18,10) code which are generated by puncturing a (32,10) TFCI code generating matrix are conventionally used. Here, the front digit within the parentheses is an index that indicates the length of a codeword, and the rear digit within the parentheses indicates the size of an information bit. However, there is a need for a generating matrix for supporting a channel code having an information bit of 24 because the channel code is recently required.
Furthermore, a process of calculating minimum distance performance between codewords after puncturing in a process of puncturing the generating matrix is very complicated. For example, in order to generate a generating matrix of a (a,A) RM code, specific A columns are selected, a generating matrix of a (2n,A) RM code is generated, and x rows in the generating matrix are punctured. The number of cases in which x rows are randomly selected from 2n rows when measuring minimum distance performance between codewords runs into astronomical figures (e.g., in the case of 2n=64 and x=16, 64C16=488,526,937,079,580). Furthermore, to calculate a computational load and complexity in a process of calculating a minimum distance by generating a set of codewords of the (a,A) RM code according to the generating matrix and measuring the distance between all the codewords within the set in each of the cases is very difficult.
Accordingly, there is a need for a method of generating a generating matrix by searching for puncturing with a less computational load and effectively.